When testing -NaN parsing, avoid narrowing -NaN from double to float. This
avoids a bug in libgcc (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98251).
The author works at Google. Upstream applied this patch as Piper revision 347654751 and exported it to GitHub; the Applied-Upstream URL above points to
the exported commit.
Linux on MIPS, PA-RISC, RISC-V, and SystemZ doesn’t expose the nominal CPU
frequency via /sys, so don’t worry if `NominalCPUFrequency` returns 1.0 on those
platforms.
Some POWER machines expose the CPU frequency; others do not. Since we can’t
predict which type of machine the tests will run on, simply disable testing for
`NominalCPUFrequency` on POWER.
The author works at Google. Upstream applied this patch as Piper revision 347079873 and exported it to GitHub; the Applied-Upstream URL above points to
the exported commit.
On some architectures, notably armel, Abseil needs symbols defined in
libatomic. Abseil does not currently have a well-developed system to
declare external library dependencies, so just have the linker determine
if anything needs libatomic and add the DT_NEEDED entry where necessary.
Forwarded: no
Bug-Debian: https://bugs.debian.org/977638
On s390x, std::hash hashes large classes of data to the same value, which
violates assumptions made by the Abseil tests. #ifdef out the test code that
depends on those assumptions.
- To minimize the possibility of future ABI breakage, treat absl::any,
absl::optional, absl::string_view, and absl::variant as their own types
(rather than aliases for the std:: versions), and compile everything in an
inline namespace.
- Enable upstream's hardened build mode.
- Disable Intel SSE2 on i386, since Debian supports some i386 processors
without that extension. Keep it enabled on amd64, since all amd64 processors
have it.
- Disable Intel SSSE3 entirely, since no i386 processor supports it and Debian
supports amd64 processors without it.